@@ -6,10 +6,10 @@ import base64 |
||
| 6 | 6 |
import json |
| 7 | 7 |
|
| 8 | 8 |
from django_logit import logit |
| 9 |
-from django_query import get_query_value |
|
| 10 | 9 |
from django_response import response |
| 11 | 10 |
|
| 12 | 11 |
from equipment.models import AepThermometerMeasureLogInfo |
| 12 |
+from utils.convert import hex2ascii |
|
| 13 | 13 |
|
| 14 | 14 |
|
| 15 | 15 |
@logit |
@@ -45,6 +45,8 @@ def aep_upload_temperature(request): |
||
| 45 | 45 |
upload_temperature_info=reqdata, |
| 46 | 46 |
temperature_info=[appdata[:2], appdata[2:4], appdata[4:6]], |
| 47 | 47 |
battery_info=[appdata[6:8], appdata[8:10], appdata[10:12]], |
| 48 |
+ temperature=f'{hex2ascii(appdata[:2])}{hex2ascii(appdata[2:4])}.{hex2ascii(appdata[4:6])}',
|
|
| 49 |
+ battery=f'{hex2ascii(appdata[6:8])}{hex2ascii(appdata[8:10])}.{hex2ascii(appdata[10:12])}',
|
|
| 48 | 50 |
) |
| 49 | 51 |
|
| 50 | 52 |
return response() |
@@ -30,7 +30,7 @@ class ThermometerMeasureLogInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin): |
||
| 30 | 30 |
|
| 31 | 31 |
|
| 32 | 32 |
class AepThermometerMeasureLogInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin): |
| 33 |
- list_display = ('imei', 'temperature_src', 'temperature_info', 'battery_info', 'status', 'created_at', 'updated_at')
|
|
| 33 |
+ list_display = ('imei', 'temperature_src', 'temperature', 'battery', 'status', 'created_at', 'updated_at')
|
|
| 34 | 34 |
|
| 35 | 35 |
|
| 36 | 36 |
admin.site.register(IsolationPointFieldPoolInfo, IsolationPointFieldPoolInfoAdmin) |
@@ -0,0 +1,23 @@ |
||
| 1 |
+# Generated by Django 3.2.7 on 2021-11-22 08:33 |
|
| 2 |
+ |
|
| 3 |
+from django.db import migrations, models |
|
| 4 |
+ |
|
| 5 |
+ |
|
| 6 |
+class Migration(migrations.Migration): |
|
| 7 |
+ |
|
| 8 |
+ dependencies = [ |
|
| 9 |
+ ('equipment', '0023_aepthermometermeasureloginfo'),
|
|
| 10 |
+ ] |
|
| 11 |
+ |
|
| 12 |
+ operations = [ |
|
| 13 |
+ migrations.AddField( |
|
| 14 |
+ model_name='aepthermometermeasureloginfo', |
|
| 15 |
+ name='battery', |
|
| 16 |
+ field=models.FloatField(default=0, help_text='用户电量', verbose_name='battery'), |
|
| 17 |
+ ), |
|
| 18 |
+ migrations.AddField( |
|
| 19 |
+ model_name='aepthermometermeasureloginfo', |
|
| 20 |
+ name='temperature', |
|
| 21 |
+ field=models.FloatField(default=0, help_text='用户体温', verbose_name='temperature'), |
|
| 22 |
+ ), |
|
| 23 |
+ ] |
@@ -287,6 +287,8 @@ class AepThermometerMeasureLogInfo(BaseModelMixin): |
||
| 287 | 287 |
|
| 288 | 288 |
temperature_info = JSONField(_('temperature_info'), blank=True, null=True, help_text='温度信息')
|
| 289 | 289 |
battery_info = JSONField(_('battery_info'), blank=True, null=True, help_text='电量信息')
|
| 290 |
+ temperature = models.FloatField(_('temperature'), default=0, help_text='用户体温')
|
|
| 291 |
+ battery = models.FloatField(_('battery'), default=0, help_text='用户电量')
|
|
| 290 | 292 |
|
| 291 | 293 |
class Meta: |
| 292 | 294 |
verbose_name = _('AEP测温记录信息')
|
@@ -0,0 +1,2 @@ |
||
| 1 |
+def hex2ascii(s): |
|
| 2 |
+ return chr(int(s, 16)) |